home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / basic / qbuddy21.lzh / QBUDDY.DOC < prev    next >
Text File  |  1988-04-20  |  12KB  |  275 lines

  1.  
  2.                        "QBUDDY"
  3.  
  4. Joe Lincoln ⌐ LINX BBS ⌐ (713) 440⌐7364 ⌐ Houston, Texas
  5.  
  6. OTHER STUFF:
  7.                PILOT MASTER (PM21)
  8.                FLIGHT SIMULATOR ADVENTURES (FSADV200)
  9.                FLIGHT SIMULATOR PILOT (FSP2⌐1)
  10.                HAMPAC5
  11.  
  12.  
  13.  
  14. Demonstration source code for Q-BASIC 4.0 (only) & ADVBAS40.
  15.  
  16. ADVBAS40 library put out by Thomas Hanlin III, is a public
  17. domain library that you must have to use QBUDDY.
  18.  
  19. I sure want to thank Mr. Hanlin. I've enjoyed his library more
  20. than any other and I have so much more to learn. He provides
  21. a great set of docs with ADVBAS40 and it's well worth the effort
  22. to print it. I bound mine with TLC and it already looks like a
  23. 16th century antique book. Well worn. Also, be sure to read up
  24. on PROBASIC in his docs. WOW! Sure wish I had $99.00.
  25.  
  26. I would also like to thank a couple of fellow sysops, CHEZBO and
  27. TED B. for introducing me to QB4.0. They "nail" me for lousy
  28. spelin. Course i dont kare, kause QB4 fix da boo-boos.
  29.  
  30. To load QBUDDY...
  31.                 QB QBUDDY /L ADVBAS
  32.                 Shft F5 (Run)
  33.  
  34.  
  35. Anyway, Q-BUDDY is just a collection of working routines that
  36. sorta demonstrates how QB4.0 and the ADVBAS 4.0 work and you are
  37. welcome to use the code in your own programs if you find it
  38. useful and subject to any claims by Mr. Hanlin and Microsoft. (I
  39. guess) I don't expect anything. No guarantees on freebies.
  40.  
  41. Since I will be adding routines as I work on the upgrade
  42. projects, I will try to update QBUDDY and post the updates in
  43. this "History" file. I am also building a library from the
  44. ADVBASand GIZLIB libraries along with many of my other favorite
  45. routines. So, for what it's worth, or not worth, here's QBUDDY.
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54. 3-14-88 Version 1.0 : QBUDDY1.ARC
  55.           First release. Some modules not complete.
  56.       SUBS WORKING: (See ADVBAS40 DOCS for more info.)
  57.                 fclose             fopen
  58.                 SetFattr           fcreate
  59.                 fread              GetAttrF
  60.                 setdrv             setsub
  61.                 getdrv             getsub
  62.                 getkbd             getdosv
  63.                 FindNextF          FindFirstF
  64.                 equipment          makewindow
  65.                 tyme               menu
  66.                 box                box.text
  67.                 center             rsmg
  68.                 CreateFile         AppendFile
  69.                 PrintFile          CreateFile
  70.  
  71.  
  72.  
  73. 3-16-88 Version 1.1  QBUDDY11.ARC
  74.           Corrupted docs - QBUDDY11.BAS okay
  75.  
  76. 3⌐16⌐88 Version 1.2  QBUDDY12.ARC
  77.  
  78. Worked on the CLIENT FILE routines. Made some cosmetic changes.
  79. The CLIENT file routine is a simple indexed random access routine
  80. with a couple of good features. The code is not as tight as I
  81. want so I'll be working on this routine which is going to
  82. develop into a small ACCOUNTS RECEIVABLE module. A lot of the
  83. code is converted QBASIC so paragraphing will done as soon as
  84. possible. It works, but it's gonna work better.
  85.  
  86. QBUDDY has a routine to CREATE a new CLIENT data base. If you
  87. want to set up this feature then select the Utilities Menu and
  88. FORMAT NEW CLIENT DISK/DIR. I just created a directory C:\CLIENT
  89. and then formatted the directory using QBUDDY. Actually, you can
  90. name the directory anything you want and change the config file
  91. QBUDDY.DAT from the Utilities menu. This directory simply handles
  92. record pointers and client file data with an A-Z index. When you
  93. create this directory it will set up for 12 fields of fixedlength
  94. (later to be user set) for a total of 2000 records (easy to
  95. change).
  96.  
  97.  
  98. 3-24-88 Version 1.3 QBUDDY13.ARC
  99.  
  100. Really beefed up the editor routine "joekey." The best example of
  101. it's use is in the NEW config routine. It handles all of the
  102. cursor control keys and presents a nice user-friendly editing
  103. string.
  104.  
  105. I didn't put in the CLIENT ACCOUNTING package this go-round. It
  106. is complete and makes extensive use of the editor in this version of
  107. QBUDDY. It now has 16 fields of data and maintains an aging-type
  108. of ACCOUNTS RECEIVABLE with automatic data/date manipulation.
  109. I'll install this feature in QBUDDY 1.4 which should be ready in a day
  110. or so.
  111.  
  112. Still plugging away at the text editor. It's no wonder good code is
  113. unavailable. Writing this stuff almost hurts.
  114.  
  115. YOU WILL HAVE TO create a new QBUDDY.DAT file or use the one in
  116. the arced file. The fields have changed. The create routine is REMed
  117. out about line 60.
  118.  
  119. And...so it goes.
  120. CLIENT FILE
  121.                 record length = 156
  122.                 LAST NAME =      20
  123.                 FIRST NAME =     20
  124.                 STREET =         20
  125.                 CITY =           17
  126.                 STATE =           2      (Presently ALL ASCII)
  127.                 ZIP =            10
  128.                 TELE1 =          13
  129.                 TELE2 =          13
  130.                 CONTRACT TOTAL = 10
  131.                 PAID =           10
  132.                 BALANCE =        10
  133.                 DUE DATE =       11
  134.  
  135. When the directory is created, a dummy file and record pointers
  136. take up the first 2 files. You can use client record numbers from
  137. 3 to 9999. A nice little feature is a search by LAST NAME/FIRST
  138. LETTER. For example, if you have more than 1 Smith in your client
  139. data base and you forget the correct number for the account,
  140. simply enter the first letter of the last name and asearch will
  141. print the Smith(s) at the bottom of the screen. Then choose the
  142. correct client number. A full scale q-sort and scan will be
  143. installed soon. However, present access time is quite fast.
  144.  
  145. When you ADD a record, a rec.pointer% is incremented +1 and when
  146. you DELETE a record the pointer is decreased -1.
  147.  
  148. There are probably buggars in this thing, but nothing serious.
  149.  
  150. The fields will be changing as the ACCT PAY routine is developed.
  151. Since this module must interface with some information being used
  152. in another program, the final code will be either single point,
  153. floating point, ASCII, or who knows.
  154.  
  155. Where this thing is going...
  156.  
  157. A fairly sophisticated TEXT EDITOR will be installed to handle
  158. the follow types of routines:
  159.  
  160.      Search and replace           Create/Edit/Amend/Delete
  161.      Custom "DUN" letters         Custom (matrix) INVOICES
  162.      Custom Printer Codes         Large printer selection
  163.      User defined Macros (?)      File conversion (dBase)
  164.      QBASIC to QB4 converter      Valleygirl type routines
  165.      User dictionary/thesaurus    Mail label - Zip sort
  166.  
  167. Internal ARCHIVAL SYSTEM (PK TYPE ROUTINE)
  168.  
  169. PRTSCRN ⌐ Fast screen/windowing
  170. Anyway, for what it's worth...here's version 1.2 of QBUDDY.
  171.  
  172. ================================
  173. 3-23-84 Version 1.4 QBUDDY14.ARC
  174. ================================
  175.  
  176.                QBUDDYSU.BAS SetUp Program
  177.                QBUDDY14.BAS Accounts Receivable
  178.                QBUDDY.DAT   SetUp File
  179.                xxxxxxx.PRN  Some Printer Files
  180.  
  181. Blame it on the ozone layer. Well, QBUDDY has developed a little
  182. further than expected so here's some poop!
  183.  
  184. There are now 2 files necessary to run QBUDDY if you want to use
  185. the setup program. All the setup pgm does is maintain a file
  186. called QBUDDY.DAT and show off a few of the ADVBAS directory
  187. handling routines. You can list the variables and find out what
  188. is being stored in the data file. It's all ASCII. This handles
  189. screen colors, directory paths, formatting new client files and a
  190. few other goodies. It would probably be best for you to remove
  191. the REM lockouts at about line 60 of QBUDDYSU. That way you can
  192. initialize the parameters you want for default directories. I
  193. have included a NEW QBUDDY.DAT file so you can get it running.
  194.  
  195. I guess that the best new feature is a super little cursor
  196. control editor that sure is user friendly. It handles the
  197. entering and editing of data with ease using all of the controls
  198. available such as PgDn, PgUp, Larrow, Rarrow, Esc, Home, Del,
  199. End, Ins, etc. The "KEY" variable in the routine is PROMPT$ which
  200. must be massaged after every entry. This helps eliminate possible
  201. loss of data and does a few calculations along the way.
  202.  
  203. I haven't finished the routine, but it is usable and CHEZBO and
  204. TED B. have kept me honest to update QBUDDY.
  205.  
  206. Setup now allows you to edit parms with the new editing routine.
  207. It also allows you to set the number of records when formatting a
  208. new data disk. (WHICH, YOU HAVE TO DO - The old one ain't no
  209. good.) I try to keep the number low so I don't waste a bunch of
  210. (sob) disk space. The previous QBUDDY fixed the number at 2000. A
  211. dummy record is stored in #2 and a file pointer is stored in #1.
  212. Users can choose from 3 to ...outer-space!
  213.  
  214. I'm still pluggin' away at the text editor. Just wanted to drop
  215. something in the mail. Should have another update in about a
  216. week.
  217.  
  218. So, for what it's worth...
  219.  
  220. ===========================
  221. APRIL 20, 1988 - QBUDDY 2.1
  222. ===========================
  223. SET-UP MODULE ONLY CHANGE
  224.  
  225. The major changes are better error trapping, creation and maintenance of 3
  226. data files, enhanced cosmetics, file copy, DOS SHELL copy and Drive trap,
  227. additional printer install code (custom code entry/retrieval) , more hardware
  228. and directory information. The program "traps" and allows you to create ALL
  229. initial parameter files if they are missing. They are supplied with this ARC.
  230.  
  231.               TC.OVL (Use file anyway you want)
  232.               AC.OVL (Use file anyway you want)
  233.               AMPARM.DAT (Sets user preferences)
  234.               QBUDDY21.BAS (The SETUP program ONLY)
  235.               QBACCT.BAS (The ACCOUNTING module ONLY)
  236.               APPLE.PRN
  237.               FX100.PRN
  238.               FX80.PRN      (Individual Printer Files)
  239.               TOSH1340.PRN       Sequential now...
  240.               HPLJII.PRN       Going to Random...
  241.  
  242. I'm still struggling with what should be a simple problem; the reading of TAB
  243. strings (user set) for each printer type. I haven't found any source code for
  244. dealing with a lot of printers and I don't really know the best way to
  245. proceed. My ultimate printing command requirements are going to be significant
  246. and I suppose there are .asm files out there for most popular printers. I just
  247. don't have them..(hint, hint, pant, pant, slobber, drool...) Right now, if you
  248. seperate your string entries with a "\", the string filter replaces these with
  249. ","'s. Somehow, the resultant string has to be interpreted to properly tab the
  250. text.
  251.  
  252. Decided to put a compiled version in for a quick looksee. Sorry for the
  253. increased size and DL time. I think I trapped most of the "missing" config
  254. files. Try running the .EXE on a new floppy without any OVL or DAT files. If
  255. it goes "south" on you, just press the "N" key and it should recover.
  256.  
  257. I really like the way Hanlin's EXIST, FINDFIRSTF, FINDNEXTF routines
  258. internally trap file errors. It makes it soooo easy to recover with specific,
  259. user friendly, traps. In fact, error recovery is a snap with all of Hanlin's
  260. stuff.
  261.  
  262. If I keep this mess up (and, it's doubtful), I will include the new ACCOUNTING
  263. module with the next release. This thing includes some pretty handy code for
  264. maintaining a large client data base, contract agreement accounting with 30-
  265. 60-90 day aging, end-of-month updating, search, replace and print. The last
  266. version (QBUDDY14) was really rough. Sorry. The next release will be much more
  267. refined and complete. This SETUP program will still work with the earlier
  268. release of the ACCOUNTING code. Fopen, Fclose, Fread, Fsetend, etc. are used
  269. as well as a pretty nice Indexed Data base.
  270.  
  271. If it goes up in smoke...blame it on tube worms.
  272.  
  273.  
  274.  
  275.